<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
<script> 
window.onload = function(){ 
 var oInp1 = document.getElementById('inp1');
 var oInp2 = document.getElementById('inp2');
 var oInp3 = document.getElementById('inp3');
 var oInp4 = document.getElementById('inp4');
 var oP = document.getElementById('p1');
 var str = '';
 var a = [];
 var arr = [ '100px', 'abc'-6, [], -98765, 34, -2, 0, '300', , function(){alert(1);}, null, document, [], true, '200px'-30,'23.45元', 5, Number('abc'), function(){ alert(3); }, 'xyz'-90 ];

 oInp1.onclick = function(){      //找到arr里所有的数字
  oP.innerHTML = '';
  for (var i=0;i<arr.length;i++){
   if (typeof arr[i] == 'number' && arr[i] === arr[i]){//'abc'-6是个NaN，NaN属于不是数字的数字类型，利用NaN !== NaN的特点
    str = arr[i];
    oP.innerHTML += str+',';
   }
  }
 }

 oInp2.onclick = function (){   //找到所有可以转成数字的
  oP.innerHTML = '';
  for(var i=0;i<arr.length;i++){
   if(parseFloat(arr[i]) || arr[i] === 0){   //必须是===，否则连[]也会计算在内
        str = arr[i];
        oP.innerHTML += str+',';
   }
  }
 }

    oInp3.onclick = function (){        //把转成数字以后，最大值判断出来
        oP.innerHTML = '';
        for (var i=0;i<arr.length;i++){
            if(parseFloat(arr[i]) || arr[i] === 0){
               a.push(parseFloat(arr[i])); 
            }
        }     //结束得到a=[100,-987654,34,-2,0,300,23.45,5]

        var max = a[0];
        for (var i = 0; i < a.length; i++) {
            if (a[i]>max) {
                max =a[i]
            };
        };
        oP.innerHTML = max;
    }

 oInp4.onclick = function (){           //把 NaN 所在的位置找出来
  oP.innerHTML = '';
  for(var i=0;i<arr.length;i++){
   if (arr[i] !== arr[i]){
    str = i;
    oP.innerHTML += str+',';
   }
  }
 }

}
</script>
</head>
<body>
  <p>
    一个数组arr = [ '100px', 'abc'-6, [], -98765, 34, -2, 0, '300', , function(){alert(1);}, null, document, [], true, '200px'-30,'23.45元',  5, Number('abc'), function(){ alert(3); }, 'xyz'-90 ];
  </p>
  <pre>
  1、找到arr里所有的数字：-98765, 34, -2, 0, 5
  2、找到可以转成数字的：'100px', -98765, 34, -2, 0, '300', '23.45元',  5 
  3、把转成数字以后，最大值判断出来：300
  4、把 NaN 所在的位置找出来：1 14 17  19
  </pre>
<input id="inp1" type="button" value="显示所有数字"><br>
<input id="inp2" type="button" value="哪些可以转成数字" ><br>
<input id="inp3" type="button" value="转成数字后最大值是：">最大!!!<br>
<input id="inp4" type="button" value="NaN的位置在：">
<p id="p1"></p>
</body>
</html>
